package com.mdb.open.trade.feign.dto;
/*
 * Copyright (C), 2017-2019 澳发科技(MDB)
 * FileName: StartRiskModelDto.java
 * Author:   符楚
 * Date:     2019-07-23 13:57
 * History:
 * <author>          <time>          <version>          <desc>
 * 符楚               2019-07-23          V1.00             新建
 * -----------------------------------------------------------
 * 作者姓名           修改时间           版本号            描述
 */

import com.mdb.bc.api.data.DataObjectBase;
import com.mdb.enums.product.ProductCodeEnum;
import com.mdb.open.common.enums.trade.type.ModelTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.HashMap;
import java.util.Map;

/**
 * 启动风控模型<br>
 * <br>
 *
 * @author 符楚
 * @Date 2019-07-23 13:57
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class StartRiskModelDto extends DataObjectBase {

    private static final long serialVersionUID = 7214702539390899175L;
    /**
     * 模型类型
     */
    @NotNull
    @ApiModelProperty("模型类型")
    ModelTypeEnum modelType;

    /**
     * 业务编号
     */
    @Size(max = 64)
    @NotBlank
    @ApiModelProperty(value = "业务编号", notes = "贸易融资编号、客户号")
    String businessKey;

    /**
     * 一级客户号
     */
    @ApiModelProperty(value = "所属一级客户编号")
    String pcustomerCode;

    /**
     * 客户编号
     */
    @NotBlank
    @ApiModelProperty(value = "客户编号", notes = "当前操作客户号/商户客户号")
    String customerCode;

    /**
     * 产品编码
     */
    @ApiModelProperty("产品编码")
    ProductCodeEnum productCode;

    /**
     * 通用参数
     */
    @ApiModelProperty("通用参数")
    Map<String, Object> extendData = new HashMap<>();

    /**
     * 备注
     */
    @Size(max = 128)
    @ApiModelProperty("备注")
    String remark;
}
